<?php
//创建二维数组
//数数组中包含数组就叫做多维数组,这个定义表示   $products数组中包含多个数组
$products = array(
	array('TIR','Tires',100),
	array('OIL','Oil',10),
	array('SPK','Spark Plugs',4)
);
// print_r($products);
//要显示这个数组的内容,可以使用代码的顺序手动访问每个元素
// echo "|".$products[0][0].'|'.$products[0][1].'|'.$products[0][2].'<br/>';
// echo "|".$products[1][0].'|'.$products[1][1].'|'.$products[1][2].'<br/>';
// echo "|".$products[2][0].'|'.$products[2][1].'|'.$products[2][2].'<br/>';

//可以使用双重for循环来实现同样的效果
// for($row = 0 ; $row < 3 ; $row++){
// 	for($column = 0 ; $column < 3 ; $column++){
// 		echo "|" . $products[$row][$column];
// 	}
// 	echo "<br/>";
// }

// $product_arr = array(
// 	array(
// 		'Code' => 'TIR',
// 		'Description' => 'Tires',
// 		'Price' => 100
// 	),
// 	array(
// 		'Code' => 'OIL',
// 		'Description' => 'oil',
// 		'Price' => 10
// 	),
// 	array(
// 		'Code' => 'SPK',
// 		'Description' => 'Spark Plugs',
// 		'Price' => 4
// 	)
// );
// print_r($product_arr);
//然而,我们不能使用一个简单的for循环按顺序遍历一遍,如下面的代码可以显示这个数组的内容
// for($row = 0 ; $row < 3; $row++){
// 	echo "|".$product_arr[$row]['Code']."|".$product_arr[$row]['Description']."|".$product_arr[$row]['Price'];
// 	echo "<br/>";
// }


//遍历整个数组的内部
// for($row = 0; $row < count($product_arr) ; $row++){
// 	while (list($key,$value) = each($product_arr[$row])) {
// 		echo "| $value";
// 	}
// 	echo "<br/>";
// }


// $json_data = [
// 	['id' => 1,]
// ];


// $good_arr = json_decode($json_data);

// var_dump($good_arr)


//多维数组
//通过这段定义了数组的代码,可以发现三维数组是一个包含了数组的数组的数组
$categories = array(array(
	array('CAR_TIR','Tires',100),
	array('CAR_OIL','Oil',10),
	array('CAR_SPK','Spark Plugs',4)
),array(
	array('CAR_TIR','Tires',100),
	array('CAR_OIL','Oil',10),
	array('CAR_SPK','Spark Plugs',4)
),array(
	array('CAR_TIR','Tires',100),
	array('CAR_OIL','Oil',10),
	array('CAR_SPK','Spark Plugs',4)
));

//因为这个数组只有数字索引,可以使用for循环的嵌套来显示他的内容,如下
//几维数组  就循环几次
//二维数组,就循环二次,三维数组就循环三次
for($layer = 0;$layer <3;$layer++){
	echo "Layer $layer <br/>";
	for($row = 0;$row<3;$row++){
		for($column=0;$column<3;$column++){
			echo "|" . $categories[$layer][$row][$column];
		}
	}
	echo "<br/>";
}